/**
 * Created by Administrator on 2016/8/5.
 */

module.exports = function(app){
    //加载post提交支持
    var bodyParser = require('body-parser');
    //设置下POST提交
    app.use(bodyParser.urlencoded({extended:true}));
    //multer 文件的上传下载支持、 文件下载的配置

    var fs = require('fs');
    //加载cookie支持
    var cookieParser = require('cookie-parser');

    //应用cookie
    app.use(cookieParser());

    //post提交注册页面
    app.post('/register',function(req,res){
        req.body.ip = req.ip;
        req.body.time = new Date();
        //发送函数
        function send(code,message){
            res.status(200).json({code,message});
        }
        //将数据保存在一个users/用户名命名的.txt的文件中
        function saveFile(){
            var filename = `users/${req.body.petname}.txt`;
            fs.exists(filename,function(exists){
                if(exists){
                    send('error','用户名已经存在');
                }else{
                    fs.appendFile(filename,JSON.stringify(req.body),function(err){
                        if(err){
                            send('error','系统错误');
                        }else{
                            send('success','注册成功');
                        }
                    })
                }
            })
        }
        //创建users文件夹
        fs.exists('users',function(exists){
            if(exists){
                saveFile();
            }else{
                fs.mkdir('users',function(err){
                    if(err){
                        send('error','系统错误');
                    }else{
                        saveFile();
                    }
                })
            }
        })

    });

    //登录的处理
    app.post('/login',function(req,res){
        //打开对应用户文件夹
        var filename = `users/${req.body.petname}.txt`;
        function send(code,message){
            res.status(200).json({code,message});
        }
        //用户提交用户名是否注册
        fs.exists(filename,function(exists){
            if(exists){
                //判断密码
                fs.readFile(filename,function(err,data){
                    if(err){
                        send('error','系统错误');
                    }else{
                        //转化JS对象
                        var user = JSON.parse(data);
                        //比较密码
                        if(user.password == req.body.password){
                            //在服务器端创建一个cookie，保存 里面存储的用户信息
                            res.cookie('petname',req.body.petname);
                            send('success','登陆成功');
                        }else{
                            send('error','密码错误');
                        }
                    }
                })
            }else{
                send('error','用户名不存在');
            }
        })
    });

    //退出
    app.get('/loginout',function(req,res){
        //清除下cookie当中petname的信息
        res.clearCookie('petname');
        //返回一个成功的信息
        res.status(200).json({code:'success'});
    });














};
